<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>软件测试 — Linux 常用命令</title>
<style>
  body { font-family: Arial, sans-serif; line-height: 1.6; padding: 20px; background: #f9f9f9; }
  h1, h2, h3 { color: #333; }
  pre { background: #eee; padding: 10px; border-radius: 5px; overflow-x: auto; }
  code { color: #c7254e; background: #f9f2f4; padding: 2px 4px; border-radius: 3px; }
  ul { margin: 5px 0 15px 20px; }
  .note { color: #d14; font-weight: bold; }
</style>
</head>
<body>

<h1>软件测试 — Linux 常用命令</h1>

<h2>文档说明</h2>
<ul>
<li><strong>目的</strong>：为软件测试工程师提供 Linux 基础操作命令参考</li>
<li><strong>适用人群</strong>：Linux 新手、测试工程师</li>
<li><strong>格式说明</strong>：命令说明 → 参数解释 → 使用示例 → 注意事项</li>
</ul>

<h2>目录</h2>
<ul>
<li><a href="#file">文件和目录操作</a></li>
<li><a href="#view">文件查看与编辑</a></li>
<li><a href="#perm">文件权限与属主</a></li>
<li><a href="#system">系统信息</a></li>
<li><a href="#network">网络相关</a></li>
<li><a href="#compress">压缩与解压</a></li>
<li><a href="#search">查找与搜索</a></li>
<li><a href="#software">软件管理</a></li>
<li><a href="#log">日志查看</a></li>
</ul>

<h2 id="file">文件和目录操作</h2>

<h3>1. ls - 列出目录内容</h3>
<p><strong>功能说明</strong>：列出指定目录下的文件和文件夹信息</p>
<p><strong>常用参数</strong>：</p>
<ul>
<li><code>-l</code>：长列表显示详细信息</li>
<li><code>-a</code>：显示隐藏文件</li>
<li><code>-h</code>：以人类可读方式显示文件大小</li>
</ul>
<p><strong>使用示例</strong>：</p>
<pre><code># 列出当前目录所有文件
ls

# 列出详细信息
ls -l

# 列出所有文件，包括隐藏文件
ls -la

# 查看 /home/test 目录下的文件
ls /home/test
</code></pre>
<p class="note">注意事项：对大目录可结合 <code>less</code> 分页查看：<code>ls -l | less</code></p>

<h3>2. cd - 切换目录</h3>
<pre><code># 进入 /home/test
cd /home/test

# 返回上一级目录
cd ..

# 返回用户主目录
cd ~
</code></pre>

<h3>3. cp - 复制文件或目录</h3>
<pre><code># 复制文件
cp file1.txt file2.txt

# 递归复制目录
cp -r dir1 dir2
</code></pre>

<h3>4. mv - 移动/重命名文件</h3>
<pre><code># 移动文件
mv file.txt /home/test/

# 重命名文件
mv oldname.txt newname.txt
</code></pre>

<h3>5. rm - 删除文件或目录</h3>
<pre><code># 删除文件
rm file.txt

# 删除目录及内容
rm -rf dir1
</code></pre>
<p class="note">注意事项：<code>rm -rf</code> 很危险，操作前请确认目录内容</p>

<h3>6. mkdir - 创建目录</h3>
<pre><code># 创建目录
mkdir newdir

# 创建多级目录
mkdir -p dir1/dir2/dir3
</code></pre>

<h2 id="view">文件查看与编辑</h2>

<h3>1. cat - 查看文件内容</h3>
<pre><code>cat file.txt
cat file1.txt file2.txt
</code></pre>

<h3>2. less - 分页查看文件</h3>
<pre><code>less file.txt</code></pre>

<h3>3. head / tail - 查看文件开头或结尾</h3>
<pre><code># 查看文件前 10 行
head file.txt

# 查看文件后 10 行
tail file.txt

# 实时查看日志更新
tail -f /var/log/syslog
</code></pre>

<h3>4. vim - 编辑文件</h3>
<pre><code>vim file.txt</code></pre>

<h2 id="perm">文件权限与属主</h2>

<h3>1. chmod - 修改文件权限</h3>
<pre><code># 给文件增加可执行权限
chmod +x script.sh

# 设置权限为 644
chmod 644 file.txt
</code></pre>

<h3>2. chown - 修改文件属主</h3>
<pre><code># 修改文件属主
chown user file.txt

# 修改文件属组
chown :group file.txt
</code></pre>

<h2 id="system">系统信息</h2>

<h3>1. top - 实时查看进程</h3>
<pre><code>top</code></pre>

<h3>2. ps - 查看进程</h3>
<pre><code>ps aux
ps aux | grep python
</code></pre>

<h3>3. df / du - 查看磁盘使用</h3>
<pre><code>df -h
du -sh dir
</code></pre>

<h3>4. free - 查看内存</h3>
<pre><code>free -h</code></pre>

<h3>5. uptime - 系统运行时间</h3>
<pre><code>uptime</code></pre>

<h2 id="network">网络相关</h2>

<h3>1. ping - 测试网络连通性</h3>
<pre><code>ping www.baidu.com</code></pre>

<h3>2. curl / wget - 网络请求</h3>
<pre><code>wget http://example.com/file.zip
curl http://example.com
</code></pre>

<h3>3. netstat / ss - 查看网络连接</h3>
<pre><code>netstat -tunlp
ss -tunlp
</code></pre>

<h2 id="compress">压缩与解压</h2>

<h3>1. tar</h3>
<pre><code># 压缩目录
tar -czvf dir.tar.gz dir/

# 解压文件
tar -xzvf dir.tar.gz
</code></pre>

<h3>2. zip / unzip</h3>
<pre><code>zip -r dir.zip dir/
unzip dir.zip
</code></pre>

<h2 id="search">查找与搜索</h2>

<h3>1. find - 查找文件</h3>
<pre><code>find . -name "*.txt"</code></pre>

<h3>2. grep - 文本搜索</h3>
<pre><code>grep "error" file.log
grep -in "error" file.log
</code></pre>

<h2 id="software">软件管理（以 Debian/Ubuntu 为例）</h2>
<pre><code># 更新软件源
sudo apt update

# 安装软件
sudo apt install git

# 卸载软件
sudo apt remove git
</code></pre>

<h2 id="log">日志查看</h2>

<h3>1. journalctl</h3>
<pre><code>journalctl -xe
journalctl -u nginx
</code></pre>

<h3>2. /var/log</h3>
<pre><code>less /var/log/syslog
less /var/log/auth.log
</code></pre>

<h2>小技巧</h2>
<ul>
<li>命令组合：管道 <code>|</code>，例如：<code>ps aux | grep python</code></li>
<li>输出重定向：<code>ls -l > filelist.txt</code></li>
<li>快捷键：Tab 补全、Ctrl+C 终止命令、Ctrl+R 历史搜索</li>
</ul>

</body>
</html>
